﻿#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>


#include <string.h>
#include <stdbool.h>
////int main()
//{
//	printf("%c\n", 'a');
//	printf("%d\n", 'a');
//	return 0;
//}

//void print(int arr[], int sz) //函数的⼤括号中的代码也构成复合语句
//{
//	int i = 0;
//	for (i = 0; i < sz; i++)
//	{
//		printf("%d ", arr[i]);
//	}
//}
//int main()
//{
//	int i = 0;
//	int arr[10] = { 0 };
//	for (i = 0; i < 10; i++) //for循环的循环体的⼤括号中的就是复合语句 {
//		arr[i] = 10 - i; 
//	printf("%d\n", arr[i]);
// return 0;
//}


//int main()
//{
//	char arr[] = "abc";
//	printf("%s\n", arr);
//	printf("%d\n", strlen(arr));
//	return 0;
//}

//int main()
//{
//	char arr[] = "abc";
//	char arr2[] = {'a','b','c'};
//	printf("%s\n", arr);
//	printf("%zd\n", strlen(arr));
//
//	printf("%d\n", strlen(arr2));
//
//	return 0;
//}


//int main()
//{
//	bool flag = true;
//	if (flag)
//		printf("i like C\n");
//	else
//		printf("haha\n");
//		return 0;
//}

//int main()
//{
//	/*printf("%zd\n", sizeof(char)); 
//	printf("%zd\n", sizeof(_Bool)); 
//	printf("%zd\n", sizeof(short));
//	printf("%zd\n", sizeof(int)); 
//	printf("%zd\n", sizeof(long)); 
//	
//	printf("%zd\n", sizeof(long long));
//	printf("%zd\n", sizeof(float)); 
//	printf("%zd\n", sizeof(double)); 
//	printf("%zd\n", sizeof(long double));*/ 
//	int a = 10;
//	printf("%zd\n", sizeof(int));
//	printf("%zd\n", sizeof a );
//	return 0;
//}
int main()
{
	short s = 4;
	int b = 10;
	printf("%zd\n", sizeof( s = b + 1)); 
	printf("%d\n", s); 
	return 0;
}

//int main()
//{
//	//%d 打印有符号整数
//	int a = -10;//有符号的整数
//	unsigned int b = 10;
//	unsigned long int c = 100;
//	unsigned long long int d = 1000;
//	printf("%d\n", a); 
//	printf("%u\n", b);
//	printf("%lu\n", c);
//	printf("%llu\n", d);
//	return 0;
//}

//int main()
//{
//	//int age = 10;
//	//char ch = 'a';
//	//double score = 95.5;
//
//	//int 2b;//错误 不能数字开头
//	//int_2b;//ok
//	//int math_core;//ok
//
//	//变量名字不能是关键字
//	//int char;//错误
////	return 0;
////}

//int b = 200;//全局变量  范围最广
//
//int main()
//{
//	int a = 100;//局部变量 范围比c广
//	{
//		int c = 20;//局部变量 范围最小
//	}
//	return 0;
//}
//int a = 100; 
//
//int main()
//{
//	int a = 10;
//	printf("a=%d\n", a);
//	//局部变量和全局变量冲突时候 以局部变量为主
//	return 0;
//}
//int main()
//{
//	int x = 4 + 22;
//	int y = 61 - 23; 
//	printf("%d\n", x); 
//	printf("%d\n", y); 
//	return 0;
//}
//int main()
//{
//	int num = 5;
//	printf("%d\n", num * num); // 输出 25 return 0;
//	return 0;
//}

//int main()
//{
//	//除法操作符
//	//除号两端如果都是整数，执行的是整数除法
//	//如果要计算处小数的效果，那么除号两端至少有一个数得是浮点数
//	printf("%d\n", 5 / 2);//2
//	printf("%lf\n", 5.0/ 2);//2.5
//	printf("%lf\n", 3/2.0);//1.5
//	//%f和%lf打印的时候小数点后默认打印6位小数
//	float x = 6 / 4; int y = 6 / 4;
//	printf("%f\n", x); // 输出 1.000000
//	printf("%d\n", y); // 输出 1 return 0;
//	return 0;
//}

//int main()
//{
//	int score = 5;
//	score = (score / 20) * 100; 
//	printf("%d\n", score);
//	return 0;
//}
//int main()
//{
//	double score = 5;
//	score = (score / 20.0) * 100;
//	//因为算完score为double类型 如果一开始定义score为浮点型会有警告
//	printf("%f\n", score);
//	return 0;
//}

//int main()
//{
//	int a = 7 / 2;//3
//	int b = 7 % 2;//1
//	int x = 6 % 4; // 2 
//	return 0;
//}

//int main()
//{
    //int a = 100;//初始化
    //a = 200;//赋值，这⾥使⽤的就是赋值操作符
//	//负数求模的规则是，结果的正负号由第⼀个运算数的正负号决定。
//	printf("%d\n", 11 % -5); // 1 
//	printf("%d\n",-11 % -5); // -1 
//	printf("%d\n",-11 % 5); // -1 
//	return 0;
//}

//int main()
//{
//    int a = 100;//初始化
//    a = 200;//赋值，这⾥使⽤的就是赋值操作符
//    return 0;
//}